#include "stl.h"
#include "linkedlist.h"
using namespace LinkedList;
#include "solution.h"

int main(int argc, char *argv[]){
    struct {
        int n;
        vector<int> vals;
    } testcases[] = {
        {2, {1,2,3,4,5}},
        {1, {1}},
        {1, {1,2}},
        {2, {1,2}},
    };
    Solution sln;
    for(auto &t:testcases){
        vector<ListNode> list;
        auto head = Link(t.vals, &list);
        print("list=", list, "\n");
        print(t.n, "th<-{", sln.removeNthFromEnd(head, t.n), "}\n")
        print("listAfter=", list, "\n\n");
    }
    
    print("\n------ main exit ------\n")
    return 0;
}
